package com.touzhijia.authority.domain.entity;

import lombok.Data;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.io.Serializable;
import java.util.Date;

/**
 * 作者： lzw<br/>
 * 创建时间：2018-03-20 20:52 <br/>
 */
@Data
public class WebPermission implements Serializable {

    /**
     * 需要授权才允许访问（1：需要）
     */
    public static final int Need_Authorization_1 = 1;

    /**
     * 需要授权才允许访问（2：不需要）
     */
    public static final int Need_Authorization_2 = 2;

    /**
     * Spring Controller路由资源是否存在，0：不存在
     */
    public static final int Controller_Exist_0 = 0;

    /**
     * Spring Controller路由资源是否存在，1：存在
     */
    public static final int Controller_Exist_1 = 1;

    /**
     * 数据库主键
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    /**
     * 资源访问所需要的权限标识字符串
     */
    private String permission;

    /**
     * 需要授权才允许访问（1：需要；2：不需要）
     */
    private Integer needAuthorization;

    /**
     * Spring Controller类名称
     */
    private String controllerClass;

    /**
     * Spring Controller类的方法名称
     */
    private String controllerMethod;

    /**
     * Spring Controller类的方法参数签名
     */
    private String controllerMethodParams;

    /**
     * 资源URL地址
     */
    private String resourcesUrl;

    /**
     * Spring Controller路由资源是否存在，0：不存在；1：存在
     */
    private Integer controllerExist;

    /**
     * 创建时间
     */
    private Date createAt;

    /**
     * 更新时间
     */
    private Date updateAt;
}
